﻿// <copyright file="DataListProvider.cs" company="Marcin Wosik">
// Copyright (c) 2010 All Right Reserved
// </copyright>
// <author>Marcin Wosik</author>
// <email>mawo11@gmail.com</email>
// <date>2010-02-25</date>
// <summary></summary>
namespace GameOfLife.Controls
{
    using System.Collections.Generic;
    using System.Collections.ObjectModel;
    using GameOfLife.GameData;

    public sealed class DataListProvider
    {
        #region Properties

        [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Performance", "CA1822:MarkMembersAsStatic")]
        [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Design", "CA1006:DoNotNestGenericTypesInMemberSignatures")]
        public Collection<DataItem<ColorMode>> ColorList
        {
            get
            {
                Collection<DataItem<ColorMode>> list = new Collection<DataItem<ColorMode>>();
                list.Add(new DataItem<ColorMode>(ColorMode.Default.ToString(), ColorMode.Default));
                list.Add(new DataItem<ColorMode>(ColorMode.Immigration.ToString(), ColorMode.Immigration));
                list.Add(new DataItem<ColorMode>(ColorMode.QuadLife.ToString(), ColorMode.QuadLife));
                list.Add(new DataItem<ColorMode>(ColorMode.Simple.ToString(), ColorMode.Simple));
                return list;
            }
        }

        [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Performance", "CA1822:MarkMembersAsStatic")]
        [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Design", "CA1006:DoNotNestGenericTypesInMemberSignatures")]
        public Collection<DataItem<ConnectionType>> ConnectionList
        {
            get
            {
                Collection<DataItem<ConnectionType>> list = new Collection<DataItem<ConnectionType>>();
                list.Add(new DataItem<ConnectionType>(ConnectionType.Moore.ToString(), ConnectionType.Moore));
                list.Add(new DataItem<ConnectionType>(ConnectionType.Neumanna.ToString(), ConnectionType.Neumanna));
                return list;
            }
        }

        #endregion Properties
    }
}